package com.charwayh.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

import java.util.Date;
import java.util.Map;

@Controller
@RequestMapping("/demo")
public class DemoController {

    /**
     * url:localhost:8080/demo/handle01
     * @return
     */
    @RequestMapping("/handle01")
    public ModelAndView handle01(){
        // 服务器时间
        Date date = new Date();
        // 返回服务器时间到前端页面
        // 封装了数据和页面信息
        ModelAndView modelAndView = new ModelAndView();
        // addObject 向请求域中放入属性值
        modelAndView.addObject("date",date);
        // 视图信息(封装跳转的页面信息)
        modelAndView.setViewName("success");
        return modelAndView;
    }


    /**
     * url:localhost:8080/demo/handle11
     * @param modelMap
     * @return
     */
    @RequestMapping("/handle11")
    public String handle11(ModelMap modelMap){
        // 服务器时间
        Date date = new Date();
        // 返回服务器时间到前端页面
        // 封装了数据
        modelMap.addAttribute("date",date);
        System.out.println("========modelMap:" + modelMap.getClass());
        return "success";
    }


    /**
     * url:localhost:8080/demo/handle12/Users/charwayh/JAVA_Project/springmvc-demo/src/main/java/com/lagou/edu/controller
     * @param model
     * @return
     */
    @RequestMapping("/handle12")
    public String handle12(Model model){
        // 服务器时间
        Date date = new Date();
        // 返回服务器时间到前端页面
        // 封装了数据
        model.addAttribute("date",date);
        System.out.println("========model:" + model.getClass());
        return "success";
    }


    /**
     * url:localhost:8080/demo/handle13
     * @param map
     * @return
     */
    @RequestMapping("/handle13")
    public String handle13(Map<String,Object> map){
        // 服务器时间
        Date date = new Date();
        // 返回服务器时间到前端页面
        // 封装了数据
        map.put("date",date);
        System.out.println("========map:" + map.getClass());
        return "success";
    }
}
